• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 404
  • Last Modified:

turbo debugger's information

Hello programmers,
I compiled an asm file (with tasm/zi), linked it (with tlink/v)
and got an exe file, which contains turbo debugger's information. I checked this information and saw that it begins with these 2 bytes (in hex): fb 52. I noticed that these 2 bytes appear, at the beginning of the debugger's information in various exe files. I know that the meaning of fb, as a mchine code is: sti and 52 is: push dx. I don't know whether the
turbo debugger interprets these bytes as data or as instructions. Who can explain ?
Thanks in advance.
Regards,
xyoavx
0
xyoavx
Asked:
xyoavx
1 Solution
 
grg99Commented:
Most probably data.


0
 
dimitryCommented:
FB 50 is data from EXE file header and it exists even in executable without debug information.
http://www.itee.uq.edu.au/~cristina/students/david/honoursThesis96/bff.htm
0
 
dimitryCommented:
To be more specific about your FB 50:
---Borland TLINK
OFFSET              Count TYPE   Description
001Ch                   2 byte   ?? (apparently always 01h 00h)
001Eh                   1 byte   ID=0FBh
001Fh                   1 byte   TLink version, major in high nybble
0020h                   2 byte   ??
0
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

 
xyoavxAuthor Commented:
Hi programmers,
Thank you for your efforts. I'm afraid that my question was not so clear. I'll clarify it by using the following example
;f.asm
 sseg segment stack 'stack'
  db 100h dup('*')
 sseg ends
 code segment
 assume cs:code
 x dw x
 db 7 dup()
 start:
 mov ax,sseg  
 mov ah,4ch
 int 21h
 code ends
 end start
The result of compiling (tasm f) and linking (tlink f) is an exe file (f.exe) which contains 784 (310h) bytes. I saw this by performing:
a) dir f.exe , b) by a calculation, based on  2 words in f.exe's header
(offsets 2 & 4). This exe file dos'nt contain information for the turbo debugger.
The result of compiling (tasm/zi f) and linking (tlink/v f) is an exe file
(f.exe) which contains 1186 bytes. I saw this by performing:
dir f.exe.
Now, the calculation, based on the above mentioned, 2 words, in f.exe's header, results (as in the former case) in 784 (310h) bytes. It means that for running this program under MS-DOS, this file contains only 310h bytes. The rest bytes contain debugger's information. I saw that the debugger's information begin with the 2 bytes (at offsets 310h & 311h)  fbh & 52h.
I noticed that these 2 bytes appear, at the beginning of the debugger's information in various exe files.
Who knows the meaning of these 2 bytes and the other bytes for the debugger ?
Thanks in advance,
Regards,
xyoavx
0
 
dimitryCommented:
To do source code debugging, debugger needs to know how every "expression" in let's say C-code corresponds to its assembler equivalent.
So generally speaking debug information contains:
  for every source code module:
    its source code file name
    and for every line of source code:
       two numbers: offset in this source file (line number) and offset in executable

Now if you want to know exact format of borland debug info, you can try google search, but I feel like it is not an open information.
At least I didn't succeed to find it very easy.

And let me reask you: what exactly you are trying to achieve ?
0
 
xyoavxAuthor Commented:
Hello Dimitry,
Thanks for your answer.
You wrote:  "And let me reask you: what exactly you are trying to achieve ?"
My answer is very simple: knowledge. I am a very curious person who wants to know as much as possible. If I get an answer to my question maybe I'll be able to use these bytes in some way.
Regards,
xyoavx
0
 
dimitryCommented:
Knowledge is great !
Take a look on:
http://www.x86.org/ftp/manuals/tools/
It contains documents of different file format debug information.
Unfortunately Borland is not among them.
0
 
xyoavxAuthor Commented:
Hello Dimitry,
Thanks for the link.
Regards,
xyoavx
0
 
mbizupCommented:
No comment has been added to this question in more than 21 days, so it is now classified as abandoned.

I will leave the following recommendation for this question in the Cleanup topic area:
    Accept: dimitry {http:#13593411}

Any objections should be posted here in the next 4 days. After that time, the question will be closed.

mbizup
EE Cleanup Volunteer
0

Featured Post

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now