Forums before death by AOL, social media and spammers... "We can't have nice things"
|    comp.sys.ibm.ps2.hardware    |    Discussing IBM PS/2 hardware    |    42,985 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 41,188 of 42,985    |
|    Christian Holzapfel to All    |
|    Re: Modern day slavery Re: Trying to rep    |
|    12 Jan 23 07:26:51    |
      From: google@holzapfel.biz              Turns out, MIAMI has a quite convenient (but slow, probably for engineering       purposes) way of accessing all its local address space (non-bursting region:       0x00000000 - 0x1FFFFFFFF) through two 32-bit registers in the adapter's IO       address space, which is        easily available.              Sing a song like this for any MIAMI based adapter:              Use MIOCCGET ioctl to read the POS registers 0..7.       Use MIOCCPUT/GET ioctls to read XPOS register 3A through addressing in POS6       and POS7.       The adapter's IO base address is derived from POS5[5:3] and POS3A[7:5] (or       just look it up in the ODM database). Probably 0xC000 or 0xD000.       Use MIOBUSGET/PUT ioctls to read/write MIAMI's Micro Channel accessible       registers at IOBASE + 0x00..0x1F, e.g. 0xD010 to access the MDATA register.       Those are only a small subset of all available registers.       Micro Channel accessible registers HSBR (IOBASE + 0x0C) and MDATA (IOBASE +       0x10) are a 32-bit wide window for accessing any address on the local bus,       including the MIAMI registers themselves!       Write the local bus address you want to read to HSBR and do a read on MDATA       (or write to MDATA if you dare).       There you have read a 32 bit word from the adapter's local address space.       Happy roaming!              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca