Hello fellow Masm Programmers!
Hope this post finds everyone doing well today. I come seeking information regarding PCI Configuration Register space (I think). A little backstory here...
I purchased a Vortex86EX SoC chip based tiny computer called the 86Duino. Hopefully I didn't just send most of you running away on that statement. This device seems to be aimed at the Arduino community as the target audience. I've never really been interested in Arduino and its cumbersome libraries. Putting aside this thing's Arduino-ness, what I see here is that this device seems to be a fully functioning PC on a chip (most everything except video, which I've added on) and I currently have a DOS image running on it. From what I am reading, accessing the device's GPIO port is only achieved after you establish the Base Address Register for the GPIO somehow in the PCI Configuration Register space. For the life of me, I can't get my head around what all this entails. Vortex/DMP tech support has never bothered with replying to my emails. The processor's datasheets are either not elementary enough for someone who's never played around with PCI configuration space or just not all that well written in general. All of the code examples I can find online (and I've searched pretty exhaustively) are all C based and I have a hard time following it to reverse engineer it. My problem I believe, is that much critical information exist in header files that I can't seem to access.
There is one included Arduino example I compiled that creates a DOS executable that strobes an onboard LED and reports to the screen just how many times the LED has ON/OFF cycled. If I were to write that same program in assembly language or in DOS DEBUG environment and using say, the INT 21 service 09 to display the message, that would result in a binary executable about 100 bytes or less. The executable this example created for this simple task was just under 700KB! Absolutely ridiculous!! So, I came here to see if any experience PCI driver writers can help me make sense of all of this. I'll be glad to upload screenshots or page snippets from the datasheet if that helps or whatever is needed.
Thank you all in advance!!
Kind Regards,
John