home *** CD-ROM | disk | FTP | other *** search
- ******** Forthmacs 3.0/3.1 Sources ******** level 2.74
- hs 15.05.97
- 3.1/2.74 15.05.97
- - StrongARM? is tested on every bootup
- - Font aware driver is ARM3-ARM7 ready now
- - disassembler improved/fixed for SWI and MUL,MLA
- - key? improved for faster switching
- - close-files is moreā¦stable after severe crashes
- - set-precision fixed
- - floatval behaving as fconstant object defined
- - SerialDev drivers are included in devices.serialdev.???.driver
- - float, defined
- - fover fixed
-
- 3.1/2.73 - experimental version
-
- 3.1/2.72 01.04.97
- - ?NEGATE and ?DNEGATE test for n2 < 0 correctly
- - FILL fixed
- - SAVE-IMAGE resets SET-RELOCATION-BIT in a correct way
-
- 3.1/2.71 17.03.97
- - new beta-video driver included for testing and comments
- - save-image doesn't set AUTOFILE? by default
- - " tests after opening image file
- - task initialize improved for turnkey applications
- - Forthmacs$Path includes an explicit path
- - disassembler bug fixed
- - line editor for different DEL keys fixed
- - CTRL-F12 gives an escape interrupt
- - CLI-calls redirect output, this is read by (more
- - (MORE improved for CR+LF files as created by redirection
-
- 3.1/2.70 26.02.97
- - official release with 2.62 fully suported, faster object access implemented
- - first 8 words in user area are reserved for runtime changing of NEXT used
- by the new debugger
- - NEW and more powerfull debugger included
- - the BUG register objects RR0 RR1 RTOP RSR ... have been renamed to R0 R1 TOP PSR
- also because of compatibility reasons
- - the application sheller has again been modified. grrr, that part just
- gets on my nerves. I just can't figure out when to do a shell-exit. Applications
- are done ok, but leaving an obey file is not tracked by RISC OS. So far there
- seems to be no legal&correct&reliable way. Anyway, this only is important when
- using nested obey scripts. One way to do it would track the appropriate SWIs :-(
-
- 3.1/2.62 17.02.97
- A complete new IS handler is built in. It knows about LOCALS,
- all kernel-type objects and multiple-code-field objects as
- defined in extend/objects.fth. Testing for object method
- conflict take place at compile time but the actual binding
- follows a late binding sheme and is also checked.
- This is implemented ratherstraightforward with almost no
- speed penalty.
- Also the decompiler knows about all these objects.
- - variable 2variable constant 2constant pointer
- - locals| nuser tuser auser value defer
- ;CODE doesn't assemble the stack instructions any longer,
- you can access the parameter address by r0 get-link
- MOVE has also been fixed, is also has optimized speed in both
- directions now
- FLUSH-CACHE-AREA is replaced by SYNC-CACHE for portability
- See the manual for stack effect
- HISTORY-EXPECT has been fixed
- a bug in the search application has been fixed
-
- 3.1/2.61 11.02.97
- Work is now concentrated on making this Forthmacs port more
- portable to NetBSD and other platforms. Also register usage
- will be the same as used in the ARM FirmWorks port for code
- reusability.
- This results in:
- - no rdx register any more; this wasn't a significant
- advantage anyway
- - the floating stack pointer is held in a user variable
- - ip the instruction pointer is redefined as r12
- ASSEMBLER is renamed to ARM-ASSEMBLER but you
- may use ASSEMBLER within a single-target environment.
- The disassmbler is pure forth code now, better support
- for non-RISC OS ARM platforms.
-
- 3.1/2.60, 03.02.97
- No real changes to the program.
- The main point in releasing this version is the replacement
- of the !4th launcher by a more powerful Tcl/shade front end.
- Also many sources have been regrouped/changed for a better
- developing environment for cross/multi target environments.
- Most non-portable things have been moved to risc_os.
- Anyway, the Tcl frontend is improving the desktop situation
- a lot and i will continue to support that.
-
-
- 3.1/2.50
- exception messages have been moved to the risc_os.messages directory.
- Each territory identifies it's file by the filename, it's the
- territories number - default is 0 for UK
-
- 3.1/2.49, 20.01.97
- - COMPARE, CAPS-COMP and COMP now all user the ANS style
- ( str1 len1 str2 len2 ) stack effects. substring sifting had to be
- recoded, many sources had to be fixed.
- - LCC UPC and all words concerning character handling with
- internationally different character usages use the appropriate
- territory modules now.
- - char>ctrl converts a char to it's controlcode, used by CONTROL
- - DIGIT is internationalized also using digit>char
- - FIND is internationalized in (FIND)
- - C" replaced by ANS S"
- - K included
-
- 3.1/2.48, 13.01.97
- - conditional compiling bug fixed, new kernel.iftrue
- - syscall: compiler produced buggy code with dummy registers
- being top, should be fixed now
- - also takes up to 10 parameters in registers
- - (see) does ?cr first for better output
- - auto file changed
-
- 3.1/2.47, 06.01.97
- - some small bugs removed
- - exception messages removed from binaries
-
- 3.1/2.46, 27.12.96
- - all multitasking functions didn't work in a correct way with
- the faster loops, shame on me.
-
- 3.1/2.45, 20.12.96
- - frame stack pointer made unnecessary, used now as a fast loop index
-
- 3.1/2.44
- - swapping improved and more simple
-
- 3.1/2.43
- - some kernel primitives have been optimized (number comparing)
- - (do) (?do) use one memory cycle less
-
- 3.1/2.42
- - parameter stack increased to 2k words for large apps
- - showcrash doesn't crash when no error occured
-
- 3.1/2.41, 06.12.96
- - small/big binaries now available, standard Forthmacs
- is distributed with 32 file-handlers, the small kernel
- and kernel/based applications have 8 handlers and
- 1k instead of 4k filebuffers.
- - FILE-PROTECTION hold the filetype in the upper 16bit, the
- lower the acces type
- 3.1/2.40, 24.11.96
- - public release of the debugged SA compatible and somewhat
- optimized version
- - m* and um* switch to optimized primitives when possible
- - StrongARM? is true when a SA cpu is available
- - RECURSE is included in kernel
- - FLUSH-CACHE-AREA used whenever securely possible, this speeds
- up the comiling significantly.
-
- 3.1/2.32
- - rare StrongARM related problems removed, new version
- because 2.31 was released and shipped already
-
- 3.1/2.31, 18.11.96
- - tool.makedisc improved
- - application swapping in/out synchronizes code
- - All archives are now zip/deflated instead of tar/gz
- easier to use with Spark
- - new simpler page terminal
- - tested with StrongARM including tools
- - some kernelheaders added for improved debugging
- - removed some undocumented terminal functions of the riscos
- driver, the paged driver will have them.
-
- 3.1/2.30
- - StrongARM compatible Forthmacs binaries
- - File$Path is not used permanently
-
- 3.1/2.20
- - ANS Floating and Floating Extend included
-
- 3.1/2.12
- - some job files improved
- - optimized compiles compresses (lit) n (of) adr -> (oflit) n adr
- - further work on paged terminal output
- - floating system is included in kernel tasking ...
-
- 3.1/2.11,20.08.96
- - terminal functions prepared for paged output
- - decompiler knows about use-actions
- - @territory alias language included in kernel
- - ARM floating point assembler included
- - task switching also sets floating point stack
- - convert accepts doubles only when point-at-end as
- suggested in ANS
- - number conversion uses >NUMBER
-
- 3.1/2.10
- - loading the autofile is included in (QUIT for improved error trapping
- - fgetline recoded using -trailing
- - bug in catch seems to be fixed now
- - bug in MOVE fixed
- - bug in [ELSE] fixed
-
- 3.1/2.09
- - completely new written online help search engine giving manual
- extractions in html or ascii
- - pinhole optimizer installed, so far
- 0= IF
- 0= WHILE
- 0= UNTIL
- now use ?0=BRANCH. metacompiler, compiler and decompiler are fixed
- - absolut branch addresses
- - bug in "CAT fixed
- - html search engine included in the registered-user version
- - -TRAILING also removes white/hard spaces
- - terminal initialising is changed
-
- 3.1/2.08
- - correct auto file
- - emacs related files moved to a seperate archive
-
- 3.1/2.07
- - OS_ReadMonotonicTime is used by all timing routines
- - THROW and CATCH included, handles all stacks and filehandles
- - all abort" messages and others have been recoded using
- throw.
- - exception messages are available in german and english,
- you may switch by 7 is language -> german
- - runtime profiler uses seperate timer
- - [if?????] words redefined a bit more clever
- - SAVE-STRING is move to the compatible mode file
- - ABORT" and ABORT have all been re-coded with CATCH&THROW
- - STRING-LOAD moved to compatible
- - FIDSTATUS added, telling all filehandlers in use
- - .BLK is another accepted extension for DOS2RISCOS conversion
- - file caching using fbuf is improved
-
-
-
- 3.1/2.06
- - INVERT is added
- - EVAL is renamed to EVALUATE
- - AT and AT? are renamed to AT-XY and AT-XY?
- - RP@ included
- - UNLINK-ALL removes temporary (cold-hook definition
- - SerialDev drivers are included in risc_os.serialdev.???.driver
-
- 3.1/2.05
- - ( hopefully ) all places where cpu instructions are assembled
- and enabled for being executed FLUSH-CACHE instructions are
- included. This will probably run on StrongARMs. Optimized
- cache handling will be done later.
- - iftrue otherwise ifend ifdef ifndef are replaced by their
- ANS compliant words: [IF] [ELSE] [THEN] [IFDEF] [IFNDEF]
- - The OS interface is more stable, illegal/non interpreted
- charcters in RISC OS are changed to BL
- - some mmmmmminor bugs removed, improved source, useless stuff
- removed.
- - The Working Disk is now delivered as a self-extracting
- archive ( Dicottery )
-
- 3.1/2.04
- - GET-CURSOR-STATUS and SET-CURSOR-STATUS have been added to
- the terminal functions
- - The whatis search engine has been redefined to work with the
- new StrongED modes.
- - The StrongED Forth-type has an icon to start the HTML pages
- - Sh^H looks for the filename under the cursor
- - ENVIRONMENT? is included
-
- 3.1/2.03
- - AT and AT? have been redefined with ANS conforming stack
- effects as x/y or column/row order, many changes in sources
- - terminal: has save_screen and restore_screen; both are
- used with extend.menu & tools
- !!! This is quick&dirty PRELIMINARY/EXPERIMENTAL VERSION
- - delete-line and insert-line bugs removed
- - terminal functions improved
- - sysvar@ and functions calling it are changed
-
- 3.1/2.02
- - (pwd fixed for different filing systems
-
- 3.1/2.01
- - two weired problems fixed;
- hard-space $a0 was not recognized as a space !!!
- Both SCANBL and SKIPBL have been changed.
- - allocation problems -> the OS dynamic memory manager has been
- replaced. The new sheme is ~ as fast as the old one but does
- not need a defined heapspace.
- 1.99 method was rather unstable in certain conditions.
- - save-image sets the filetype and disables set-relocation-bit
- for the first bootup part!
- - deompiler displays IS instead of (IS), " now is c"
- - each filebuffer is 4k if enough memory is available, this results
- in faster file access on slow media
- - debugger windows redefined for correct doubles
- - autofile deals with the tools.jobs files, improved user interface
- - assembler knows about negative cmp literals
- - each tasks limit is set, tasks set their user-area-id
-
- 3.1/2.00
- - intermediate version, non-public
-
- 3.1/1.99
- - the keyboard is installed before cold-hook !
- - heapsize now calculates memory needed by the file system plus
- the relocation-map plus Forthmacs$heapsize
- - Forthmacs$maximage is not supported any more, the wimpslotsize
- minus stack minus heap-size is the maximage.
- - the typing interface has been changed to support more keyboards,
- ^S shows all words
- ^C completes the word
- - tib enlarged to h# 104 - this improves redirected input
-
- 3.1/1.98
- - postpone included, compile removed.
- sources with wide changes!
- - " renamed to c"
- - StrongED is supported much better now, this results in NOT doing
- active support on emacs any more
- - delete and copy don't abort but give error messages instead
-
- 3.1/1.97
- - shame on me! 2@, 2! and 2literal have been fixed
- - double representation is ANS correct
-
- 3.1/1.96
- - sys-expect now doesn't leave a <cr>
- - debugger stack has been enlarged
-
- 3.1/1.95
- - unknown words are offered to the cli interpreter before accepted
- as incorrect.
-
- 3.1/1.91-1.94
- - buggy & non public versions.
-
- 3.1/1.90
- - Forthmacs sources are no longer compatible in some areas
- so the major version has also changed.
- - NOW included double (64bit) intermediates in */ */mod fm/mod sm/rem
- - BEWARE: number output/input has been redefined using ANS compliant
- stack effects.
- The input of literals accepts doubles if there was a dot like 2.0
- Affected words:
- #> (s ud# -- addr len )
- # (s ud1 -- ud2 )
- #s (s ud1 -- ud2 )
- convert (s ud addr -- ud' addr' )
- number? (s str -- d flag )
- number (s addr -- d )
- literal? (s str -- str false | dliteral true )
- - long? has been renamed to double?
- - BEWARE: some Arithmetic words have been redifined using ANS
- compliant stack effects in:
- m* (s n1 n2 -- d )
- um* (s u1 u2 -- ud )
- m/mod (s d n -- n n )
- um/mod (s ud u -- u u ) -- this has replaced u/mod
- mu/mod (s ud u - u.rem ud.quot)
- fm/mod (s d n -- n n )
- sm/rem (s d n -- n n )
- - complete ANS double wordset
- - new double size number output words:
- (du.) (d.) d. d.r du. du.r
- - size of buffer #-buf has been increased to d# 68, so 64bit
- binary numbers can be displayed.
- - sources using above mentioned words have been updated
- - the decompiler knows about double literals
-
- 1.83d
- - */ wrong sources replaced, thanks to Andreas Schubert
- - emacs cmds updated and whatis support included
- - File$path set to include emacs commands
-
- 1.83c
- - (ren has been renamed as (rename as described in the docs.
- Also the stack behaviour is now correct
- - (pwd has been included
- - auto file has been debugged, autoinstalling is now done by auto.fth
- - mailing service included
- - swap-file is removed after swapping in
- - standard-terminal doesn't clear the screen
- - pwd now gives path including filin-system
- - initializing won't set (bye to bye any more
- - NEW: >tab and eof? included
-
- 1.83
- - systems vocabulary included
- - NEW: to-current relinks a word to another vocabulary
- - more debugging stuff in debug
- - interactive tool selection in auto
- - data-type conversions, long operators moved to lib.compatible
- and lib.compatible
- - improved unaligned-@, unaligned-! flip
-
- 1.82
- - um*, m* now give true 64-bit results
- portability support has be moved to lib.compatible
- - gzipped tar-archives can be copied to risc_os.installing,
- the will automatically be installed when running Forthmacs
- - KEY1 is default of KEY, structure as in EMIT
-
- 1.81
- - more ANSI stuff included
- - internal source-tree unique for ANS/Forth-83 developm.
- - binaries moved to risc_os.bin,now called
- risc_os.bin.Forthmacs / ANSForth
- risc_os.bin.Kernel / ANSKernel
-
- 1.80
- - update tool included, gzip & tar accessible
- *** READ docs.ascii.convention ***
- - whatis files found in <Forthmacs$Dir>Path
- - better org. of bin.*
- - debugger registers rtop rr0 ... in vovabulary BUG
-
- 1.71
- - relocated userdata tuser, auser hold relocation bit in target
- binary
- - decompiler rearranged
- - some ANSextensions included, /cell /char ....
- - lib.compatible holds stuff for updating
- - .pointers included for successfull debugging
-
- 1.70
- - RMEnsure ColourTrans included for RISC OS2 comps
- - division bugs removed !!!!
-
- 1.69
- - first version to be given away.
-
- 1.68
- - Versions up to 1.69 internal use only
-