Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

x86 code and data location

Status
Not open for further replies.

polarized

Member level 4
Member level 4
Joined
May 13, 2002
Messages
76
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Location
Europe
Activity points
966
Hello,

I have a question regarding the old DOS x86 Borland C compiler. Is it possible to configure the MAP file? The MAP file shows the code and data segments of the generated .EXE file. It is possible to choose the memory model tiny, compact, huge, etc... but not to configure the MAP file, as I understand it. I plan to generate a 16-bit real x86 embedded application with this compiler in a already defined memory space. Is it possible to use some kind of software which will load the .EXE file and the MAP file and produce the same program, but in a different memory space, or to configure the MAP file inside of the compiler or linker itself?


Bye.
 

I do not know much about the content , may be can give some points :
The file Borland produces is about executable file format for DOS . It should have some tables to instruct
how the program will be loaded into the memory and how the relocateable memory will be addressed .
So you can use exe file only under DOS , or if you will design program loader which understands file format .
For embedded system design there such programs called locator which can produce binary executable in absolute adderessable format - image of the file in memory at predefined address . Most probably these programs can give you chance to configure the memory space layout and so on . Otherwise you need something like exe loader which simulates DOS .
There are some projects related to free DOS system . . Also I suppose the MAP file shold be generated by linker whichc resolves references , may be you can find something in linker settings .
 

polarized said:
I plan to generate a 16-bit real x86 embedded application with this compiler in a already defined memory space.

You need compiler and linker/locator for embedded systems to do that. The one I use is CADUL it _was_ available for x86 REAL and PROTECTED mode. Thn INTEL bought it (Cadul) and closed the project. Maybe the Cadul toolchain can be found on some FTP.

Tom
 

I live same problem for embeded system.

I solve it by my idea and i didnt see any problem.

I compile the C source using tcc and I produced asm source.
I defined the data, code and stack segment in the asm source.
I defined all segment register in the top of asm program.
I compile this asm source using tasm and produced eprom file.
 

bunalmis,

That is doing the job of Linker & Locator manually. The approach you suggest is a hard way to do the job. Toolchains like Cadul have IDE and Debugger what makes a life of embedded programmer easier.

Tom
 

location tool for X86

CAD-UL **broken link removed** - maybe closed ???

paradigm c++ https://www.devtools.com/



free location tool

romize

**broken link removed**
 

Another better free rommable tool is UNILOC v2.2 ..
Supports floating point (emulation) and large data
Will create libs for small,...huge for Borland C only.
Do a google search ..german website ..186 etc

Cannot find it pm me.

..lak
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top