Releases: FDOS/freecom
Version 0.86
FreeCOM 0.86 release
See included HISTORY.TXT or git changelog for details on changes.
Please see artifacts from automatic builds for latest builds.
-
command.zip is a FreeDOS package for use with FreeDOS distributions, it includes full source
-
freecom-source.zip is just the source from git
-
For each language supported, a zip archive is provided with the following versions:
The language specific versions are compiled for the specific language so the critical errors will also be translated if available. *** The system codepage needs to be set to an appropriate setting for the language files to display correctly.-
xms-swap: the latest FreeCOM with XMS-Only swap support. The xms-swap files are recommended for computers with extended memory and an extended memory manager such as himem, as XMS memory is used for swapping.
-
kswap: the latest FreeCOM with kswap support. The kswap files provide basic swapping support, useful for 8086/8088 systems.
-
plainedt: the latest FreeCOM without the command line editing enhancements (history, file completion). These are xms-swap variants.
-
debug: the latest FreeCOM with debug information enabled. These are xms-swap variants.
-
-
The * -localize.zip files are developer packages for localizers (to create new or maintaining existing * .LNG files),
which includes latest FreeCOM (xmsswap with enhancements) and precompiled strings (* .dat)
for each language along with the source (* .lng) language files and fixstrings.exe used to
generate new strings.dat file. The precompiled command.cln uses English language for critical errors. The included *.cln files do not have a language appended, so run "copy /b command.cln + strings.lng command.com" to get a version with most strings in the language of your choice. The included command.com and xmsswap.com are in English. See included documentation for further details.
**If you are unsure, download either the command.zip or English.zip and use the xms-swap version.**FreeCOM release 0.86
What's Changed
- fix: GCC port wrongly used libc internal fns. _open _close _lseek by @tkchia in #60
- Fix Turkish translations by @bitigchi in #64
- Lang update by @andrewbird in #70
- Languages: Import German from fd-nls by @andrewbird in #71
- NLS: Import from fd-nls by @andrewbird in #72
- Update from fd-nls by @andrewbird in #74
- CI: Update Openwatcom archive file name by @andrewbird in #77
- Supplement: Match fmem* functions to common prototypes by @andrewbird in #80
- Supplement: Fixup some more compat prototypes by @andrewbird in #81
- Supplement: rename intr( ) to intrf( )/_intrf( ), and make its prototype agree with the corresponding functions in Open Watcom and (gcc-ia16 +) libi86 by @tkchia in #82
- CI: Update Github Actions to remove warnings by @andrewbird in #83
- COPY: Fixes for invalid target drive error by @andrewbird in #85
- DIR: Remove nonexistent /V option from string files by @andrewbird in #86
- Correct the order of variable assignment in strings\strings.mak by @joshux in #89
- Ci 02 by @andrewbird in #93
- COPY: allow lowercase drive letter for destination by @ecm-pushbx in #94
- Cmdline fix by @boeckmann in #96
- fix OpenWatcom 1.9 build warnings by @boeckmann in #101
- fix multi-line command editing #102 by @boeckmann in #103
- Build: Use revised echoto batch file from kernel by @andrewbird in #106
- Translation updates / fixes by @boeckmann in #110
- Open Watcom fix wlib listing handling by @jmalak in #113
- Cmp01 by @andrewbird in #114
- Build 2024 by @andrewbird in #115
- fix echoto.bat if no arguments given by @jmalak in #116
- quote CMDLINE env var exe name if needed, fix memory leak in expandEnvVars, memory corruption in set command by @boeckmann in #104
- CI-build: do download and setup Open Watcom more transparent by @jmalak in #118
- build: modify echolib.bat to minimize environment use and args check by @jmalak in #117
- build: fix echoto.bat arguments overflow by @jmalak in #121
- build: fix make tool command line handling by @jmalak in #120
- build: fix make files to work properly with Turbo C make tool by @jmalak in #124
- NLS updates by @boeckmann in #123
- Tc build fixes 01 by @andrewbird in #125
- Open-Watcom: use safer form of #pragma aux by @jmalak in #127
- build: remove # comment like handling linker command by @jmalak in #128
- build: fix build by tlib and response file (Borland tlib) by @jmalak in #129
- CI: Turbo C 2.01 get and decrypt by @andrewbird in #130
- build: add message for echoto.bat arguments overflow by @jmalak in #132
- asm: remove some MASM residual directives by @jmalak in #135
- build: fix build by tlib and response file (Borland tlib) by @jmalak in #131
- build: rename macros to be more transparent by @jmalak in #133
- correct header files references by @jmalak in #134
- build: remove redundant rules by @jmalak in #136
- build: add ptchsize as native build for cross-compilation by @jmalak in #137
New Contributors
- @joshux made their first contribution in #89
- @ecm-pushbx made their first contribution in #94
- @boeckmann made their first contribution in #99
- @jmalak made their first contribution in #113
Full Changelog: com085a...com086
FreeCOM 0.85a
FreeCOM 0.85a release
The release provides multiple variants, recommended is one of the Open Watcom xms-swap versions. This release fixes a regression with IF ERRORLEVEL in the 0.85 release and a regression that prevented the debug builds from working. Other changes are minor and mostly documentation updates. See included HISTORY.TXT or git changelog for more details.
The files with ow are built with Open Watcom (default compiler), the files with bc are built with Borland C/C++ 3, and the files with gcc are built with GCC (ia16). Currently only xms-swap GCC (ia16) built version is provided, please see artifacts from automatic builds for latest builds with GCC.
-
[bc-]command.zip is a FreeDOS package for use with FreeDOS distributions, it includes full source
-
[bc-]freecom-source.zip is just the source from git but with file timestamps set to latest committed change for the file
-
For each language supported, a zip archive is provided with the following versions:
The language specific versions are compiled for the specific language so the critical errors will also be translated if available. *** The system codepage needs to be set to an appropriate setting for the language files to display correctly.-
xms-swap: the latest FreeCOM with XMS-Only swap support. The xms-swap files are recommended for computers with extended memory and an extended memory manager such as himem, as XMS memory is used for swapping.
-
kswap: the latest FreeCOM with kswap support. The kswap files provide basic swapping support.
-
plainedt: the latest FreeCOM without the command line editing enhancements (history, file completion). These are xms-swap variants.
-
debug: the latest FreeCOM with debug information enabled. These are xms-swap variants.
-
-
The * -localize.zip files are developer packages for localizers (to create new or maintaining existing * .LNG files),
which includes latest FreeCOM (xmsswap with enhancements) and precompiled strings (* .dat)
for each language along with the source (* .lng) language files and fixstrings.exe used to
generate new strings.dat file. The precompiled command.cln uses English language for critical errors. The included *.cln files do not have a language appended, so run "copy /b command.cln + strings.lng command.com" to get a version with most strings in the language of your choice. The included command.com and xmsswap.com are in English. See included documentation for further details.
If you are unsure, download either the command.zip or ow-English.zip and use the xms-swap version.
FreeCOM 0.85
FreeCOM 0.85 release
The release provides multiple variants, recommended is one of the Open Watcom xms-swap versions.
The files with ow are built with Open Watcom and the files with bc are built with Borland C/C++ 3
Currently only English xms-swap GCC (ia16) built version is provided, please see automatic builds for latest builds with GCC.
The files with -intl use English language for critical errors and provide strings.* for all supported languages.
The included *.cln files do not have a language appended, so run "copy /b command.cln + strings.lng command.com" to get
a version with most strings in the language of your choice. The included command.com and xmsswap.com are in English.
The xmsswap.* files are recommended for computers with XMS memory, as XMS memory is used for swapping. The command.* files use standard swapping and swap to disk. (rename to command.com if using intl archives, or use command.com in xms-swap subdirectory for language specific archives)
The language specific versions are compiled for the specific language so the critical errors will also be translated if available. These are only provided in Open Watcom builds. *** The system codepage needs to be set to an appropriate setting for the language files to display correctly.
FreeCOM 0.84-pre7
This version, 0.84pre7 is a beta release for testing.
Three command.com's are included:
commandt.com, compiled with Turbo C++ 1.01
commandw.com, compiled with Open Watcom C 1.9
commandg.com, compiled with https://github.com/tkchia/gcc-ia16 commit 884ab03
Please test and let us know which one is most stable.
To use this shell, just run the COMMAND[GTW].COM file or copy it to COMMAND.COM.
The com084b7-xmsswap.zip
archive below contains the binaries.
The com084b7.zip
archive below contains the source code with proper time stamps.
The other source code archives have been automatically generated by GitHub.
Changelog:
- fix: Check for Win64 in Watcom makefile via %ProgramFiles(x86) (Bart)
chg: Build xms-swap by default (Bart) - fix: Use -fno-builtin for GCC to use libc/overridden functions everywhere (Bart)
- chg: Use -mregparmcall for GCC. Needs adjustment of intr() prototype
(still stdcall) (Bart) - chg: Add linker script command.ld so relocations can be used in NASM code
for GCC via _TEXTSEG. (Bart) - fix: Force 8086-asm; use direct call far real_XMSexec instead of push/push/retf.
Fixes #15 (Bart) - fix: Move termination hook into seperate file and always use independent of XMS.
Closes #16 (Bart) - fix: Fix loadhigh failure when zero-byte free memory block is exist
(Sava, lpproj) - fix: Allow escape of > < | via ^> ^< and ^|. Fixes #12. (Bart)
- fix: Fix build break on msys2 (with *-mingw32-gcc and ia16-elf-gcc)
(Sava,lpproj) - fix: LH/LOADFIX call execute instead of exec and skip bat files. Fixes #8.
(Bart) - fix: LOADFIX: stop manipulating UMB link, use first fit>0x10000. Fixes #10.
(Bart) - fix: dosGetUMBLinkState needs to return state in _AL, not _AX (see #10)
(Bart) - fix: Avoid possible NULL dereference in dprintf. Fixes #9 (Bart)
- fix: XMScopy needs to be declared noinline for GCC to work correctly. (Bart)
- fix: Fix "copy con file" where file already exists. (Bart)
We need to use devopen instead of dfnstat to check for src existence. - fix: Create and use sfn_creat() for dos_creatnew() redone.
Also rename dos_creatnew() to sfn_creatnew().
Using creat instead of creatnew for file creation avoids
the need for truncation using write(), and the handle can
be directly used without needing to reopen the file.
However, differently from the previous try, LFNs are still reopened for
compatibility with Windows 2000/XP. (Bart) - fix: dos_read and dos_write now call farread/write for all compilers.
This is more consistent and fixes truncating writes for GCC. (Bart) - fix: Fix lfnmkdir to really create LFNs; easiest to separate out. (Bart)
- fix: Don't use expensive open/close to check for SFN.
Instead use the boolean, then put in extra check to see if
int21/ax=7160 works. (Bart) - fix: Add stack checking, adapted from Tom Ehlert (Bart)
- fix: Save another 520 bytes of stack by reusing buffers where safe. (Bart)
- fix: myfnsplit(): use common buffer to store dir/name/ext to save stack space.
This saves ~1250 bytes of stack and eliminates stack overflows in the
ke2041 test in metados. (Bart) - chg: Generate 28.com and 50.com from assembly language. (Bart)
FreeCOM 0.84-pre6
This version, 0.84pre6 is a beta release for testing.
Three command.com's are included:
commandt.com, compiled with Turbo C++ 1.01
commandw.com, compiled with Open Watcom C 1.9
commandg.com, compiled with https://github.com/tkchia/gcc-ia16 commit 884ab03
Please test and let us know which one is most stable.
To use this shell, just run the COMMAND[GTW].COM file or copy it to COMMAND.COM.
FreeCOM 0.84-pre5
This version, 0.84pre5 is a beta release for testing.
Three command.com's are included:
commandt.com, compiled with Turbo C++ 1.01
commandw.com, compiled with Open Watcom C 1.9
commandg.com, compiled with https://github.com/tkchia/gcc-ia16 commit 884ab03
Please test and let us know which one is most stable.
To use this shell, just run the COMMAND[GTW].COM file or copy it to COMMAND.COM.
FreeCOM 0.84-pre4
This version, 0.84pre4 is a beta release for testing.
Three command.com's are included:
- commandt.com, compiled with Turbo C++ 1.01
- commandw.com, compiled with Open Watcom C 1.9
- commandg.com, compiled with https://github.com/tkchia/gcc-ia16 commit 95fbd1f
Please test and let us know which one is most stable.
To use this shell, just run the COMMAND[GTW].COM file or copy it to COMMAND.COM.
FreeCOM 0.84-pre3
This version, 0.84pre3 is a beta release for testing.
Three command.com's are included:
- commandt.com, compiled with Turbo C++ 1.01
- commandw.com, compiled with Open Watcom C 1.9
- commandg.com, compiled with https://github.com/tkchia/gcc-ia16 commit b14fb18
Please test and let us know which one is most stable.
To use this shell, just run the COMMAND[GTW].COM file or copy it to COMMAND.COM.