home *** CD-ROM | disk | FTP | other *** search
- !fpbas4tla (copyrigth (c) MUFTI (email: zrzm0111@helpdesk.rus.uni-stuttgart.de))
-
- use Stewart Brodies FPAssemble- (somewhere also called FPAbas-) tool
- to evaluate FPU-commands for the TLA -assembler version 0.1h by Frank Lancester
- (current Version of TLA doesn't support FPU-commands)
-
- This program is not made to act inside the wimp, it's made to be started inside
- a obeyscript (starting a preprocessor from the wimp result in unnecessary
- dragging and clicking ....)
-
- This program is freeware, you may use it, copy it to any media, make it
- available to everyone, but you may not get money for redistribution.
-
- to use the program, you must have at least FPAbas, Perl and normally TLA
- ========================================================================
- (all PD or Freeware, available via mail info-server@newcastle.ac.uk
- or by anonymous FTP or mail from rusmv1.rus.uni-stuttgart.de)
-
- syntax:
- !fpbas4tla outputfile inputfile
-
- ***************************************************************************
- WARNING: Don't swap input- and outputfile, your inputfile will be destroyed
- ***************************************************************************
- Usage of this program is under your own risc. You have no rigths against me,
- if something goes wrong.
-
- !fpbas4tla
- bring commands in the inputfile from the form
- FPU-COMMAND-AS-STRING
- to the form:
- .WORD FPU-COMMAND-AS-NUMBER
- to the outputfile for further use as Assembler-input
-
- (similar
- label FPU-COMMAND-AS-STRING
- to:
- label .WORD FPU-COMMAND-AS-NUMBER
- where label is identified cause it's first character is the first
- character in the line (as usual as in TLA)
- )
-
- reserved:
-
- the begining of 1. (2. if a label occure) word of the line matches:
- ========
-
- the available Floating point instruction set (from FPABAS/FPAssemble):
- LDF
- STF
- ADF
- MUF
- SUF
- RSF
- DVF
- RDF
- POW
- RPW
- RMF
- FML
- FDV
- FRD
- POL
- MVF
- MNF
- ABS
- RND
- SQT
- LOG
- LGN
- EXP
- SIN
- COS
- TAN
- ASN
- ACS
- ATN
- FLT
- FIX
- WFS
- RFS
- WFC
- RFC
- CMF
- CNF
-
- in addition to this,
-
- .FLOAT floatingpoint-constant
-
- is alos available. It transforms the floatingpoint-constant into the hex image
- of single precision.
-
- ********************************************************************
- Warning
- -------
-
- All 1. (or 2.) Words are identified as fpucommand that matches with the
- beginning of a member of the available Floating point instruction set.
- Therefore also
- CMFE .....
- is seen as FPU-command, but also
-
- the Label:
-
- CMFLABEL MOV .....
-
- the MACRO:
-
- CMFMACRO hugo,otto ....
-
- *******************************************************************************
- the floiting-point-commands must have FPABAS-syntax (no . for decimal numbers)
- *******************************************************************************
-
- special thanks to:
- Frank Lancester (wrote and ported TLA)
- Stewart Brodie (wrote FPABAS/FPAssemble)
- Larry Wall/Paul Moore (wrote/ported perl)
-
- Cause the cli may ignore *error, it's useful to alter fpabas/fpassemble
- a bit. If before *error the errormessage is printed, you can see the
- errormessage in the outputfile.
- A simple "diff"-program for fpabas/fpassemble Version 1.01R is included.
-
- example of a inputfile:
- ==========================================================================
- .ABSOLUTE
- .PROC fputest
- LDR R0,here5ptr
- B start
- here5 .WORD 0
- rums .FLOAT 5.0
- here1 .WORD 0
- .FLOAT 1.0
- here5ptr .WORD here5
- here1ptr .WORD here1
- start MVF F0,#5
- STF F0,[R0,#0]
- LDR R0,here1ptr
- MVF F0,#1.0
- STF F0,[R0,#0]
- SWI OS_Exit
- .END
- ===========================================================================
- resulting outputfile:
- ===========================================================================
- .ABSOLUTE
- .PROC fputest
- LDR R0,here5ptr
- B start
- here5 .WORD 0
- ;rums .FLOAT 5.0
- rums .WORD 040A00000
- here1 .WORD 0
- ; .FLOAT 1.0
- .WORD 03F800000
- here5ptr .WORD here5
- here1ptr .WORD here1
- ;start MVF F0,#5
- start .WORD 0EE00810D
- ; STF F0,[R0,#0]
- .WORD 0ED800100
- LDR R0,here1ptr
- ; MVF F0,#1.0
- .WORD 0EE008109
- ; STF F0,[R0,#0]
- .WORD 0ED800100
- SWI OS_Exit
- .END
- ===========================================================================
- which can be assembled by TLA
-
- if there are any problems ( i hope not )
- send a mail to
-
- zrzm0111@helpdesk.rus.uni-stuttgart.de
-
- so long
- MUFTI
-