amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

[Login] [Registrieren] [Passwort vergessen?]

< Nächste MeldungVorige Meldung >
01.Jan.2025
Frank Wille (ANF)


Entwicklerwerkzeuge: vasm 2.0a und vlink 0.18
Frank Wille hat vasm, einen portablen Assembler für zahlreiche CPUs mit verschiedenen Syntax- und Output-Modulen, sowie vlink, einen portablen Linker für zahlreiche Object-, Executable- und Binär-Formate, aktualisiert.

Die Änderungen bei vasm V2.0a:
  • Fixed bad path in source level debugging information, when the initial source file and an include file were based on the same "compile directory".
  • Get rid of C99-round() dependency.
  • Fixed empty strings, which were broken in V2.0. They should not generate any data.
  • When position-independant code is requested (-pic option) the assembler defaults to relocatable mode (to be able to detect violations).
  • Allow 64-bit (or more) expressions with absolute label addresses.
  • 6502: Additionally allow BRK with an immediate 8-bit operand.
  • 6502: Operand prefix character '?' can be used to select the Memory/Bank-ID where the referenced symbol resides. Requires the use of VOBJ and vlink.
  • mot-syntax: A double colon after the label also exports RS symbols now.
  • madmac-syntax: New directives: ifdef and ifndef (just for convenience, they are no official MadMac directives!).
  • madmac-syntax: Fix problem with print-directive when string is empty.
  • oldstyle-syntax: Fixed usage of '$' as current-PC symbol for Z80, which was broken since V2.0.
  • oldstyle-syntax: Fixed definition of structure offset labels, which should be referenceable by structname.offsetname. Broken since V2.0.
  • hunk-output: Fixed output generated by Databss directives (like DX in mot-syntax). Broken in V2.0.
  • hunk-output: -linedebug: do not generate multiple entries per line.
Die Änderungen bei vlink 0.18:
  • Define for each relocation type whether it is signed, unsigned or unknown, to provide better range checks.
  • Make the range-checking work with sign-extended addresses (Example: m68k 16-bit absolute addressing).
  • When an output section's memory region has not enough space the linker will look for the next matching output section.
  • Linker script function KEEP() now really prevents garbage collection of sections.
  • Sorting and exclusion functions for linker script section patterns: SORT_BY_ALIGNMENT(), SORT_BY_NAME(), SORT_BY_SIZE(), REVERSE(), EXCLUDE_FILE(), EXCLUDE_SECTION(). Supporting up to two sorting levels.
  • The output section's bank size can be defined by (BANKSIZE=n) in the script, so input sections may not cross bank borders. In that case they will be aligned to the beginning of the next bank.
  • Linker script MEMORY definitions now support an optional ID=n argument, where n defines an identification value which can be referenced by a VOBJ-specific relocation type (MEMID).
  • Can find first executable code-section now, when no start symbol is present.
  • Portable pattern matching routine, used for Windows and TOS, did case-insensitive string comparisons in the past.
  • Absolute symbols are printed as a separate section into the map file.
  • Support LINKONCE section flag.
  • New options -symfile, -symfmt and -symctrl to output symbol/value pairs into a file using the given printf-format string.
  • New options -obe and -ole to specify the endianess of octets within a target-byte (when it has more than 8 bits) when writing the contents of a section to a file system.
  • New option -lineoffsets to output a separate file with source line offsets per section.
  • New option -mattr to merge all sections with same attributes, when linking without a linker script.
  • The target file formats rawbin1 and rawbin2 were replaced by a common rawbin format. rawbin2 is now -brawbin with -multifile option. The old target names are still supported for backwards compatibility.
  • New target file formats "foenixpgx-c02", "foenixpgx-816", "foenixpgz-24" and "foenixpgz-32" for Foenix retro computers.
  • New target file format "appleomf" can generate relocatable load-files for Apple IIgs computers.
  • Merge options -mrel, -mtype and -mall also work with -r now, when creating a new relocatable object file.
  • Linker script commands BYTE, SHORT, LONG, QUAD, SQUAD do now create 1, 2, 4 or 8 target-bytes and no longer 8, 16, 32, 64-bit values.
  • Relocatable/Abs symbols with the same name have precedence before Common symbols and do not cause a multiple-definition error.
  • Starting vlink without arguments only shows a short list of options now. For a detailed description use -h, which also includes target-specific options selected by -b.
  • Fixed output section trimming in the linker script.
  • Fix error message for unknown target file formats (-b).
  • (ados/ehf) New option -kick1 makes sure the generated executable is comaptible with the Kickstart 1.x loader.
  • (ados/ehf) Allow symbol redefinitions from pulled library units, as long as their target CPU differs (M68k/PPC WarpOS mixed binaries). This only worked for symbols from code sections, since V0.17.
  • (elf) Fixed uninitialized .plt at end of text segment.
  • (tos) Can use DRI object files and libraries as input now. HiSoft and SozobonX symbol name extensions are supported.
  • (tos) TOS executable files do work as input and DRI objects as output (-r).
  • (tos) Enable SozobonX symbol names with -tos-sozobonx.
  • (tos) Disable the HiSoft symbol name extension in executables with -tos-stddri.
  • (rawbin) Fixed missing byte in the ORIC tape header and automatically remove a ".tap" extension from the name stored there.
  • (rawbin) IHEX supports architectures with more than 8 bits per byte. But note that the address is still incremented in 8-bit steps.
  • (rawbin) Make sure the file size is even, when using a QDOS header.
  • (rawbin) Fixed raw reloc table output (-q) for a relocation at offset 0.
  • (rawbin) New options -fill, -coalesced and -multifile (previously rawbin2).
  • (vobj) Supports -r option to output a relocatable VOBJ file. Option -vobj2 may be used to write that file in VOBJ v2 format.
  • (vobj) -vobjcpu option selects the name of the target CPU.
  • (vobj) Supports VOBJ v2 format (vasm -Fvobj -vobj2) and PPC non-standard relocations (EABI, MorphOS, AmigaOS).
  • (xfile) Entry address is written to the header.
  • (xfile) New option -x-high sets the high-address flag in the header.
(snx)

[Meldung: 01. Jan. 2025, 15:12] [Kommentare: 0]
[Per E-Mail versenden]  [Druck-Version]  [ASCII-Version]
< Nächste MeldungVorige Meldung >

.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2025 by amiga-news.de - alle Rechte vorbehalten.
.