中国DOS联盟论坛

China DOS Union

-- Unite DOS · Advance DOS · Grow DOS --
Union site: www.cn-dos.net Forum site: www.cn-dos.net/forum
Guest | Log in | Register | Members | Search | China DOS Union
中国DOS联盟论坛
The time now is 2026-10-31 18:15
47,815 topics / 349,930 posts / today 0 new / 48,290 members
DOS开发编程 & 发展交流 (开发室) » How to access a 32-bit address space under DOS?
Printable Version  1,515 / 12
Floor1 luyd Posted 2003-04-28 00:00
初级用户 Posts 2 Credits 109
I've recently been making a PCI card, and the BIOS maps it to a space with Baseaddress 40400000.
How can I access (read/write) this block of memory under DOS? I'm using BC31, what should I do? Experts, save me!
Floor2 如是大师 Posted 2003-04-28 00:00
元老会员 Posts 3,351 Credits 9,654 From 湖北
I don't really understand it, let's wait for wengier to have a look. Just helping you bump the thread.
Floor3 Wengier Posted 2003-04-29 00:00
系统支持 Posts 10,521 Credits 27,736
About this, it's best to use assembly for addressing. Using BC may not be very convenient, though I haven't used it either.
Floor4 Dark-Destroy Posted 2003-04-29 00:00
元老会员 Posts 3,551 Credits 8,312
Let me ask, what exactly does assembly mean??
Floor5 luyd Posted 2003-04-29 00:00
初级用户 Posts 2 Credits 109
Many thanks to all the seniors, please hurry and teach me a few tricks, I'm almost going crazy from the urgency.
Floor6 ATLaS Posted 2003-07-09 00:00
初级用户 Posts 29 Credits 169
In real mode, it's impossible to access that address space. Under bc31, it seems there should also be some kind of 32-bit dpmi host or something similar, so that the program runs in 32-bit protected mode; then the memory address mapping is in flat mode. Just directly define a far pointer pointing to that address, and you can access it. I've done it under watcom c+dos4g/w, but under bc I'm not sure.
Floor7 Dark-Destroy Posted 2003-07-10 00:00
元老会员 Posts 3,551 Credits 8,312
Using djgpp works too~
djgpp has cwsdpmi~
Floor8 feng Posted 2003-09-10 00:00
初级用户 Posts 5 Credits 117
I've run into exactly the same problem too. I don't know whether you got your problem solved or not. If you did, could you tell me? If not, we can discuss it together. My email is [email protected]
Floor9 ldy810 Posted 2005-10-07 22:05
新手上路 Posts 6 Credits 13
You can first turn off GATE A20, then call 1M less memory, but at most you can only access 4G
Floor10 taowentao Posted 2005-10-08 16:03
高级用户 Posts 111 Credits 739 From 辽宁沈阳
Its linear address is 40400000 >> 12 + 0000 = 40400, which is within 1M, so real mode can access it completely.
Floor11 jhbin_1999 Posted 2005-10-09 22:36
初级用户 Posts 4 Credits 117
I've run into the same problem too, and would like to discuss it with you. email: [email protected]
qq:55512153
Floor12 killiori Posted 2005-10-15 21:20
新手上路 Posts 15 Credits 15 From 湖北襄樊
Floor13 killiori Posted 2005-10-15 21:22
新手上路 Posts 15 Credits 15 From 湖北襄樊
Need to add offset
sorry
[ Contact the Union admin team - 中国DOS联盟 - Standard version ]
Sponsored by ifanr Inc | © 2001–2023