Skip to contentSkip to conversation

LinuxAsmTools Announcement

DISCUSSION jeff 3 participants 4 messages Dec 13, 2008 – Dec 19, 2008

lore
Share & tools
lore

jeff

author
#0 lore raw

Announce:
The http://LinuxAsmTools.net web site has completed its first testing milestone. All programs are still beta, but improving.

Site Description:
LinuxAsmTools is devoted to 32-bit Linux assembler programming for tools running in console or x terminal. The focus is narrowed further by the SFF (small fast friendly) guideline.

Programs Available:

ainfo-0.9.45.tar.gz - example program for tty wrapping functions asmcolor-0.9.45.tar.gz - example program showing color library asmdis-0.9.49.tar.gz - disassembler asmedit-0.9.48.tar.gz - programmers editor for assembly asmfile-0.9.17.tar.gz - file manager asmfind-0.9.46.tar.gz - disk search tool asmlib-0.9.59.tar.gz - library
asmlinks-0.9.47.tar.gz - viewer with links to files asmmenu-0.9.44.tar.gz - example program, provides menu for scripts asmmgr-0.9.49.tar.gz - file manager (being replaced by asmfile) asmplan-0.9.46.tar.gz - todo program asmproject-0.9.44.tar.gz - setup for assembler projects asmpub-0.9.45.tar.gz - extracts documentation from assembler source asmref-0.9.58.tar.gz - help files for assembler asmsrc-0.9.47.tar.gz - generate source for ELF executables asmtimer-0.9.47.tar.gz - simple timer for ELF executables asmtrace-0.9.55.tar.gz - traces kernel calls and disassebler asmview-0.9.52.tar.gz - simple file viewer copy-0.9.06.tar.gz - copy program similiar to DOS copy crt_test-0.9.44.tar.gz - example program, and display test domac-0.9.04.tar.gz - macro processor elfdecode-0.9.47.tar.gz - display of ELF file contents file_browse-0.9.46.tar.gz - file selector fileset-0.9.02.tar.gz - file attribute changer, plus format_doc-0.9.44.tar.gz - example program, modifies text files key_echo-0.9.49.tar.gz - echo keys and check terminfo database minibug-0.9.05.tar.gz - console debugger sort-0.9.44.tar.gz - example program, simple file sort steptest-0.9.44.tar.gz - example program, tests physical fitness tracex-0.9.03.tar.gz - trace x server calls walktest-0.9.44.tar.gz - example program, tests physical fitness

Web Site Contents:
The web site is organized as follows:

whats new
programs
libraries
downloads
puzzles
opinion
tips
sff
about
links

Links:
http://LinuxAsmTools.net
http://[email protected]

#1 lore raw

Firstly,Thanks for your great job.

These day i study about linker and loader,i meet a problem which make me puzzle.

when i disassemble *.o object file on x86 machine and find instruction "call 0xFCFFFFFF",because not link,but why this address 0xFCFFFFFF not 0xFFFFFFFF or others?

i think must have some results i don't know,plz tell me.Because now young people like me ,most ly don't familiar with assemble and link.

Best Regards.

2008/12/14 jeff <[email protected]>:

Quoted 67 lines

Announce:
The http://LinuxAsmTools.net web site has completed its first testing milestone. All programs are still beta, but improving.

Site Description:
LinuxAsmTools is devoted to 32-bit Linux assembler programming for tools running in console or x terminal. The focus is narrowed further by the SFF (small fast friendly) guideline.

Programs Available:

ainfo-0.9.45.tar.gz - example program for tty wrapping functions asmcolor-0.9.45.tar.gz - example program showing color library asmdis-0.9.49.tar.gz - disassembler asmedit-0.9.48.tar.gz - programmers editor for assembly asmfile-0.9.17.tar.gz - file manager asmfind-0.9.46.tar.gz - disk search tool asmlib-0.9.59.tar.gz - library
asmlinks-0.9.47.tar.gz - viewer with links to files asmmenu-0.9.44.tar.gz - example program, provides menu for scripts asmmgr-0.9.49.tar.gz - file manager (being replaced by asmfile) asmplan-0.9.46.tar.gz - todo program asmproject-0.9.44.tar.gz - setup for assembler projects asmpub-0.9.45.tar.gz - extracts documentation from assembler source asmref-0.9.58.tar.gz - help files for assembler asmsrc-0.9.47.tar.gz - generate source for ELF executables asmtimer-0.9.47.tar.gz - simple timer for ELF executables asmtrace-0.9.55.tar.gz - traces kernel calls and disassebler asmview-0.9.52.tar.gz - simple file viewer copy-0.9.06.tar.gz - copy program similiar to DOS copy crt_test-0.9.44.tar.gz - example program, and display test domac-0.9.04.tar.gz - macro processor elfdecode-0.9.47.tar.gz - display of ELF file contents file_browse-0.9.46.tar.gz - file selector fileset-0.9.02.tar.gz - file attribute changer, plus format_doc-0.9.44.tar.gz - example program, modifies text files key_echo-0.9.49.tar.gz - echo keys and check terminfo database minibug-0.9.05.tar.gz - console debugger sort-0.9.44.tar.gz - example program, simple file sort steptest-0.9.44.tar.gz - example program, tests physical fitness tracex-0.9.03.tar.gz - trace x server calls walktest-0.9.44.tar.gz - example program, tests physical fitness

Web Site Contents:
The web site is organized as follows:

whats new
programs
libraries
downloads
puzzles
opinion
tips
sff
about
links

Links:
http://LinuxAsmTools.net
http://[email protected]

--
To unsubscribe from this list: send the line "unsubscribe linux-assembly" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

#2 lore raw
Quoted 3 lines

when i disassemble *.o object file on x86 machine and find instruction "call 0xFCFFFFFF",because not link,but why this address 0xFCFFFFFF not 0xFFFFFFFF or others?

First of all, the value is not 0xFCFFFFFF, it's 0xFFFFFFFC (little-endian), which is the 32-bit equivalent of -4.

And the reason for the -4 is that it's an offset. When the linker fills in the real address, it will subtract the subroutine's absolute address from the address of the -4 value to get a relative address, which it will then add to the existing -4 to get the correct relative address for the call instruction. And, the reason that 4 needs to be subtracted is that when the call is executed, it will actually jump from the end of the call instruction, which is 4 bytes ahead of where the relative address is stored.

b

#3 lore raw

OH~~~ great,thx for u help,that really a tip.

2008/12/19 Brian Raiter <[email protected]>:

Quoted 19 lines
Quoted 3 lines

when i disassemble *.o object file on x86 machine and find instruction "call 0xFCFFFFFF",because not link,but why this address 0xFCFFFFFF not 0xFFFFFFFF or others?

First of all, the value is not 0xFCFFFFFF, it's 0xFFFFFFFC (little-endian), which is the 32-bit equivalent of -4.

And the reason for the -4 is that it's an offset. When the linker fills in the real address, it will subtract the subroutine's absolute address from the address of the -4 value to get a relative address, which it will then add to the existing -4 to get the correct relative address for the call instruction. And, the reason that 4 needs to be subtracted is that when the call is executed, it will actually jump from the end of the call instruction, which is 4 bytes ahead of where the relative address is stored.

b