home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CBM Funet Archive
/
cbm-funet-archive-2003.iso
/
cbm
/
programming
/
msdos
/
xa214f.lzh
/
xa214f
/
doc
/
xa.log
< prev
next >
Wrap
Text File
|
1998-04-20
|
6KB
|
133 lines
******** XA-2.1.0 ******** 31OCT1996 A.FACHAT
rEWRITE OF COMMAND LINE OPTION HANDLING TO BETTER LOOK LIKE USUAL (CC) OPTIONS.
REMOVED ^m FROM ALL FILES. rEMOVED ALL EXTERNAL DECLARATIONS TO HEADER FILES,
AND MADE ALL STATIV FUNCTIONS STATIC. nOW COMPILES ALMOST WITHOUT WARNING
WITH 'GCC -w -wALL'.
******** XA-2.1.0A ******** 31OCT1996 A.FACHAT
iNTRODUCED CONCEPT OF CODE RELOCATION. nOW EACH LABEL BEING SET TO THE
PROGRAM COUNTER IS A 'POINTER', THAT GETS AN ENTRY IN A RELOCATION TABLE.
sIMPLE ARITHMETIC OPERATIONS ARE ALLOWED. tHE RELOCATION TABLE IS STILL
JUST PRINTED UNSORTEDLY.
******** XA-2.1.0B ******** 31OCT1996 A.FACHAT
pRODUCES SOME PRELIMINARY KIND OF RELOCATABLE FILE, INCLUDING HEADER ETC.
pROBLEMS: RELOCATION TABLE DOES AS IF FILE IS ASSEMBLED FOR ADDRESS 0.
nEED A) A BETTER WAY TO SET PROGRAM COUNTER. B) PSEUDO OPCODES FOR
DISTINGUISHING SEGMENTS. C) A WAY TO TEMPORARILY DISABLE RELOCATION.
D) A WAY TO INCLUDE EXTRA HEADERS AND OPTIONS INTO THE FILE.
******** XA-2.1.0D ******** 02NOV1996 A.FACHAT
aSSEMBLER NOW PRODUCES A RELOCATABLE FILE FORMAT, AS DESCRIBED IN THE FILE
"FILEFORMAT.TXT". tEMPORARILY DISABLING RELOCATION IS WITH THE "*=VALUE"
DIRECTIVE, WHILE SWITCHING BACK TO RELOCATION MODE GOES WITH "*=" (WITHOUT
VALUE). nEW PSEUDO OPCODES ".TEXT", ".DATA", ".BSS", ".ZERO" SWITCH BETWEEN
THE SEGMENTS.
******** XA-2.1.0E ******** 06NOV1996 A.FACHAT
tHERE WAS A BUG IN THE ARITHMETIC ROUTINE THAT HAD SET ALL POINTER TO THE
TEXT SEGMENT, IF SOMETHING WAS ADDED. tHERE ALSO WAS A BUG IN THE LOADER
WHEN ACTUALLY USING OPTIONS. a NEW PSEUDO OPCODE WAS ADDED:
".FOPT", WORKS LIKE ".BYTE", BUT PUTS THESE BYTES IN A FILE OPTION.
tHE LENGTH IN THE FILE OPTION IS AUTOMAGICALLY SET. ".FOPT" MAY APPEAR
ANYWHERE IN THE FILE, BUT IT SHOULD BE AT THE BEGINNING (MIGHT BE
MANDATORY IN A LATER VERSION).
******** XA-2.1.0F ******** 11NOV1996 A.FACHAT
aDDED A COMMAND LINE SWITCH "-m" TO IGNORE COLONS IN A COMMENT AFTER A
SEMICOLON. wITHOUT IT, A COLON SEPARATES COMPLETE MNEMONICS, INCLUDING
THE SEMICOLON COMMENT. wELL, ACTUALLY THIS SWITCH IS A "masm"
COMPATIBILITY SWITCH, AND WILL SURELY BE EXPANDED SOMEDAY, WHEN i GET
MORE INFO ON masm. nOW "*" AND "=" CAN BE SEPARATED FOR THE DEFINITION
OF THE PROGRAM COUNTER AND ".BYTE" IS ALSO ACCEPTED. tHIS MAKES IT MORE
masm COMPATIBLE. ".END" IS IGNORED. sTILL MISSING: ".INCLUDE"
******** XA-2.1.0G ******** 21DEC1996 A.FACHAT
sTARTED WORKING ON 'OFFICIAL' O65 FILEFORMAT. iF THERE ARE NO UNDEFINED
LABELS, AND NO RELOCATED CODE IS EMBEDED IN ABSOLUTE CODE, THE THING
SHOULD WORK.
******** XA-2.1.1 ******** 21DEC1996 A.FACHAT
.DSB NOW HAS AN _OPTIONAL_ PARAMETER 'FILLBYTE'...
UNDEFINED REFERENCES ARE NOW PUT INTO THE RELOCATION TABLE (I.E. HANDLED
CORRECTLY) IF THE "-C" OPTION IS GIVEN.
EMBEDDING ABSOLUTE IN RELOCATABLE CODE AND VICE VERSA IS BUGGY...
tHE FILE FORMAT CONFORMS TO O65 VERSION 1 FILE FORMAT.
******** XA-2.1.1A ******** 21DEC1996 A.FACHAT
EMBEDDING ABSOLUTE CODE IN RELOCATABLE SEEMS TO WORK NOW.
******** XA-2.1.1E ******** 22DEC1996 A.FACHAT
tHE OPTION TO EMBED RELOCATABLE CODE IN ABSOLUTE CODE HAS BEEN DROPPED.
tHEREFORE THE COMMAND LINE OPTIONS -a (MAKE IT ROMABLE), -B? (SET SEGMENT
START ADDRESSES) AND -g (OMITT EXPORTED GLOBALS FROM FILE) HAVE BEEN ADDED.
iNTERNALLY, THE WHOLE THING HAS BEEN 'DYNAMISED', I.E. EXCEPT FOR THE
PREPROCESSOR (AND THE STORAGE BETWEEN PASS1 AND PASS2) USE DYNAMICALLY
ALLOCATED TABLES. M_ALLOC, WHICH HAD BEEN INTRODUCED LONG TIME AGO
BECAUSE OF THE BUGGY MALLOC ON THE aTARI st IS GONE NOW!
******** XA-2.1.1F ******** 02JAN1997 A.FACHAT
aDDED THE "-A" AND "-a" OPTIONS TO FILE65, SO THAT IT CAN NOW PRINT THE
START ADDRESSES FOR FOLLOWING FILES IN THE rom WHEN MAKING ROMABLE CODE.
aDDED SHELL (BASH) SCRIPT "MKROM.SH" THAT ASSEMBLES A GIVEN LIST OF FILES
AND BUILDS A romABLE FILE. tHE FIRST TWO BYTES ARE SINGLE LINKED LIST POINTERS,
AND THEN COMES THE FILE.
******** XA-2.1.1G ******** 03JAN1997 A.FACHAT
aDDED THE FILE "RELOC65", TO RELOCATE O65 FILES WITHOUT REASSEMBLING THEM.
aLSO FIXED QUITE SOME BUGS IN XA (SEGMENT NUMBERING IN THE GLOBALS LIST AND
SWITCHED LOW/HIGH BYTE RELOCATION ENTRY TYPE IN RELOCATION TABLE. nOW CONFORMS
TO DOCUMENTATION, I.E. FILEFORMAT.TXT).
******** XA-2.1.2 ******** 04JAN1997 A.FACHAT
aDDED "LD65", A SIMPLE LINKER FOR O65 FILES. aNOTHER BUG IN XA FIXED NOW.
******** XA-2.1.3 ******** 25MAR1997 A.FACHAT
aLLOWS TO USE ".DATA" ETC IN ABSOLUTE MODE, TOO. nO RELOCATION ENTRIES
ARE GENERATED THEN. sEGMENT START CAN BE SET WITH "-B?" COMMAND LINE
OPTIONS, THOUGH. aLSO THE DATA SEGMENT IS DISCARDED WITH THIS METHOD!
tHIS ALLOWS TO USE THE NORMAL ".DATA" ETC SYNTAX EVEN WHEN ASSEMBLING A
rom (WHICH IS DONE IN ABSOLUTE MODE)
fIXED A BUG WHERE .DSB IN A DATA SEGMENT DIDN'T FILL WITH THE RIGHT VALUE
******** XA-2.1.3E ******** 27JUL1997 A.FACHAT
aDDED PREPROCESSOR CONTINUATION LINES, AND .BLOCK AND .BEND PSEUDO-OPCODES
(tHEY MAP TO .( AND .) RESP.)
******** XA-2.1.4 ******** 11SEP1997 A.FACHAT
dO NOT LEAVE OUTPUT FILE AROUND AFTER AN ERROR - THIS IS BETTER FOR "MAKE".
aLSO IT SEEMS TO HAVE SETTLED FOR A WHILE, SO i CAN RELEASE A NEW VERSION.
******** XA-2.1.4C ******** 30DEC1997 A.FACHAT
fIXED A NASTY BUG THAT PREVENTED CORRECT RELOCATION TABLE ENTRIES WHEN
A "LABEL2=LABEL1" CONTRUCT WAS USED AND "LABEL2" WAS ACCESSED.
aDDED "-i" OPTION.
******** XA-2.1.4D ******** 26JAN1998 A.FACHAT
FIXED ALIGN CODE. nOW INSERTS nop OPCODES INTO TEXT SEGMENT, AND SETS
FILE MODE APPROPRIATELY.
******** XA-2.1.4E ******** 26JAN1998 A.FACHAT
cHANGED O65 FILEFORMAT AND ADOPTED IT IN XA.