home *** CD-ROM | disk | FTP | other *** search
- Short: New powerful programming language v0.17
- Author: Martin Kuchinka
- Uploader: kuchinka@volny.cz
- Type: dev/e
- Version: 0.17, 8.5.2001
- Replaces: powerd.lha
- Requires: OS3.0+, additional memory,
- PhxAss,PAsm,
- PhxLnk,VLink,
- A WebBrowser for documentation
-
- It is not a reworked AmigaE, it is completely new programming language,
- which has only similar syntax to AmigaE. It is quite memory hungry, but
- 4 megabytes should be enough for larger projects. It can use linked
- libraries and objects. It is free.
-
- See documentation or my homepage www.volny.cz/kuchinka for more information.
-
- If You want to be betatester, please e-mail me, you will be welcomed.
-
- If you found some bugs or you have remainders or suggestions, please
- e-mail me, opinions are also welcome.
-
- I hope You will use and like it.
-
- PS: All help is welcome.
-
- Changes from 0.16:
-
- - Added inlined PowerPC assembly (ASM/ENDASM)
- - all standard mnemonics supported
- - most of extended mnemonics supported
- - easy usage of local/global variables directly in the assembly code
- via special mnemonics (lw, sw, etc.)
- - new feature TDEF for definition of custom types (like C's typedef)
- - binary modules support it ofcourse too
- - finally added UNIONs to binary modules!!!
- - improved OBJECT support
- - You can now define internal objects with OBJECT and ENDOBJECT keywords
- - You can use [ and ]:name instead of OBJECT name and ENDOBJECT keywords
- inside the object
- - Added OFFSET and RELOFS keywords and a new feature to setup the item
- positions in the object
- - Added ALIGN keyword
- - Improved unions, each can be now followed with OF keyword like the
- OBJECT keyword itself
- - Added C alike unions
- - CASE can now handle equations (CASE a+1 TO b-1,10,11)
- - added support for empty arguments (like: func(,1,,3), or: [1,2,,3,,]:list)
- - now prints all unused procedures
- - improved AmigaE support:
- - AmigaE support is enabled by '.e' extension in source name
- - all variables/objects and it's items names are converted to lower case
- - all constants are converted to upper case
- - I can't recomend to write bigger E projects in D, but if You need it
- You can switch to original AmigaE or CreativE...
- - powerd.lib news
- - BitSize(0) now returns 0 instead of 1
- - WriteF() function added
- - StrCmpNC() (case free string compare) function added
- - lots of powerpc native assembly functions added
- - and some less important improvements
- - modules news
- - graphics/gfxbase.m should work
- - minor changes in handling 68k library functions in the ppc native code.
- - all the modules in the dmodules: directory (not in it's subdirectories)
- must now have it's own link library in d:lib/modules directory. Take a
- look at new LIBGEN=LG/K cli argument, which will
- generate for You all the 68k function launchers for the ppc.
- - removed NOPP argument
- - bug fixes
- - FOR a:=0 TO -1 made one loop, fixed
- - BitSize(0) now returns 0 instead of 1
- - removed infinite loop when object item wasn't found
- - OPT NOHEAD didn't produce executable file, only the object file
- - if expressions were build only from constants and all of them were
- integers, the result was computed also as an integer, also if the
- destination was float (DEFD a=1/2), fixed, thanks to Maciej Po³yga!
- - post and pre decrementation/incrementation can be now combined (++a--)
- - definition of local constants can contain also global constants
- - fixed a bug in static list definition
- - fixed bug in PowerPC optimizations (blr,blr)
- - fixed bug in FOR loop
- - fixed problem with stack in ppc code
- - fixed lots of another ppc related problems
- - UNTILN now works
- - compiler reports if two or more procedures with the same name appeared
- - division by zero when compiling a module fixed
- - sources can now end with a comment (/* */) without ending linefeed
- - x[]++:=y now works (but ++x[]:=y still doesn't, sorry)
- - no more error reporting, when JUMPing to a local label
- - items after UNIONs has now correct offset (very long standed bug)
- - binary modules containing objects was saved incorrectly (althought was
- working), such modules doesn't need to be recompiler, but I recomend
- it :)
- - GM=GENMODULE/K argument now does always correct return types
- - fixed some sign extensions in functions in powerd_ppc.m module
- - fixed external procedure definitions in binary modules, the binary
- modules containing external procedures definitions (all in
- dmodules:lib) are changed
- - fixed a bug in global data definition for PowerPC code
- - removed optimization which caused a bug if SUB was used
- - known enforcer hits removed
- - and several more or less important fixes
-