446 Commits

Author SHA1 Message Date
Andrew Bird
032523a2bb
Merge pull request #208 from andrewbird/ci-fix
CI: Force lower case when unzipping
2025-06-24 16:36:48 +01:00
Andrew Bird
d383546589 CI: Force lower case when unzipping
Sometimes DOS packages can have upper or mixed case filenames that Linux
unzip doesn't recognise as needing downcasing.
2025-06-24 16:13:20 +01:00
Bernd Boeckmann
b8ef68fb86 add missing test for write before invalidating buffer in INT25,26 handler 2025-06-02 11:35:38 +02:00
Bernd Boeckmann
8d29d66148 test for uninitialized dpb on INT25,26 and always allow rw block zero
The problem is that ISFAT32 macro only tests for dpb->fatsize = 0, and
not also for xfatsize != 0. So the ISFAT32 macro returns a
"false positive" on uninitialized dpbs, where both fatsize and xfatsize
are zero.

This fixes https://github.com/FDOS/kernel/issues/200. However, the dpb
is not properly initialized via a media check by an INT25,26 yet.

This commit makes sure that written sectors are removed from the
block cache.
2025-06-02 11:21:36 +02:00
Kenneth J Davis
654e7b7a6c
debug macro adjustments to separate what is printed in DEBUG mode 2025-03-28 19:57:59 -04:00
Kenneth J Davis
7fd6a6b71b
add alternative path (compile time determined) if attempt to write >4GB should fail whole write or succeed but only up to 4GB (based on email from Tom) 2025-03-28 17:04:59 -04:00
Kenneth J Davis
767cafa737
initialize pChildEnvSeg to 0 as if failed, callers would potentially free random memory address 2025-03-28 17:03:58 -04:00
Kenneth J Davis
868ae24d3c
correct env size allocated, should be 0x80+3 not 80+3 as filename is 128 bytes 2025-03-28 17:02:58 -04:00
Kenneth J Davis
bb8b581915
add some comments and debug prints 2025-03-28 17:01:49 -04:00
Kenneth J Davis
93add63a3b
add assert macro 2025-03-28 16:59:13 -04:00
Kenneth J Davis
fa0959cb82
keep history.txt updated for pending release 2025-03-28 14:21:09 -04:00
Kenneth J Davis
9967d2d662
add some debug prints and update some to use debug print facility 2025-03-28 14:20:26 -04:00
Kenneth J Davis
de08998969
From Tom Ehlert, gracefully error when attempting to write past 4GB instead of wrapping and causing corruption. 2025-03-28 14:14:44 -04:00
Kenneth J Davis
42a006b964
add some comments regarding share 2025-03-28 10:24:19 -04:00
Kenneth J Davis
634257b913
add convenience switch to redirect debug output to COM port when building, update some debug prints to use our debug interface so print to COM port when enabled. 2025-03-28 10:24:19 -04:00
E. C. Masloch
192cccc68f in 2F.4A02 advance firstAvailableBuf past the alignment as well (neater) 2025-03-16 20:56:22 -04:00
E. C. Masloch
85be764a50 fix 2F.4A MS-DOS v5 style HMA access services
* Reject allocation call with too large requested size,
rather than allocating the remaining HMA.
* Align returned offset to paragraph boundary.
* Allow to allocate up to the very last byte of the HMA,
rather than 1 byte less.
* Pass last allocated byte to AllocateHMASpace instead
of the byte past it, which would carry for a full allocation.
2025-03-16 20:56:22 -04:00
Kenneth J Davis
5de2eb1aa0
avoid some useless messages when building release 2024-12-31 18:08:11 -05:00
Kenneth J Davis
dffdc492bf
linker arguments passed via response file, doesn't interact well with explicit options 2024-12-31 16:55:23 -05:00
Kenneth J Davis
6f5a136a60
ensure cloning submodules 2024-12-31 16:23:20 -05:00
Kenneth J Davis
44dd357f86
update readme for v2.44 2024-12-31 15:44:14 -05:00
Andrew Bird
6cd67917a8
Merge pull request #192 from jmalak/fix-2
CI-build: do download and setup Open Watcom more transparent
2024-12-23 22:52:27 +00:00
Andrew Bird
abeda02ee1
Merge pull request #191 from jmalak/fix-1
build: modify echoto.bat to check arguments overflow
2024-12-23 22:47:26 +00:00
Jiri Malak
86ea0f75aa CI-build: do download and setup Open Watcom more transparent 2024-12-23 23:37:16 +01:00
Jiri Malak
ced1587aa4 build: modify echoto.bat to check arguments overflow 2024-12-23 23:28:49 +01:00
Kenneth J Davis
7cd0e19681
build 2044 - update release documentation 2024-12-21 13:09:09 -05:00
Kenneth J Davis
1cc00e194d
avoid race condition that could corrupt user stack if DOS re-entered too soon
apply suggested fix from SF bug 215 (https://sourceforge.net/p/freedos/bugs/215/), InDOS cleared but small chance DOS re-entered before user stack restored thus corrupting user stack
2024-08-19 16:31:22 -04:00
Kenneth J Davis
dabfaf7d54
enable installation check for driver.sys
For now we still only support subfunction 3 (return drive table) and subfunction 0 (check if installed) which we say yes.  This allows DOS Internals DRVINFO.EXE to correctly use internal drive table (it checks if installed and doesn't bother if not) and return corresponding information.  Note: subfunction 3 is still handled in int2f.asm for now, but may be moved to cleaner (but bigger and slower) implementation in inthndlr.c
2024-08-19 15:05:12 -04:00
Kenneth J Davis
1c6d1e8434
add reminder comment 2024-08-18 16:25:18 -04:00
Kenneth J Davis
f25e959e0a
response file is generated during build, update gitignore 2024-08-18 16:24:21 -04:00
Kenneth J Davis
2ce6dc00de
exeflat failed to advance str so didn't actually skip whitespace at beginning of string, additional comments 2024-08-18 16:22:15 -04:00
Andrew Bird
8f056cce6d
Merge pull request #187 from andrewbird/pr180
exeflat: Update usage text for indirect file
2024-08-18 13:55:22 +01:00
Andrew Bird
c6b227b783
Merge pull request #186 from andrewbird/pr177a
Resurrected Pr177
2024-08-18 10:43:00 +01:00
Andrew Bird
fb9704f62e sys: Correct bin2c usage text 2024-08-18 10:40:52 +01:00
E. C. Masloch
f7947771cb config: only overwrite skip config prompt if it was displayed
This allows to boot with SWITCHES=/F without any lone CRs.
2024-08-05 20:45:16 -04:00
E. C. Masloch
314c8b627b do not display any lone Carriage Returns
In combination with SWITCHES=/N in fdconfig.sys this commit makes
it so only proper CR LF linebreaks are displayed, for instance when
piping dosemu2 output to a file.

SWITCHES=/F will set SkipConfigSeconds so that config.c SkipLine will
display a string reading "\r%79s\r" to delete the prompt that it has
displayed. This overwriting should not be needed for SkipConfigSeconds=0
however. Refer to subsequent commit.
2024-08-05 20:45:16 -04:00
Bernd Böckmann
42980dfe7d fix list traversal bug in update_dcb()
This caused the kernel to hang when loading NETDRIVE.SYS
2024-08-05 20:44:15 -04:00
Kenneth J Davis
ed2fd81927
add initial support for DRIVER.SYS
currently only skeleton logic and implementation of install check & get drive data table list [returns ddt* which allows mapping DOS drive # to BIOS drive # for drives handled by default DOS block driver]
2024-08-05 20:37:25 -04:00
Kenneth J Davis
8bdb2db5f6
missing 0 in constant - build fix 2024-08-05 09:49:54 -04:00
Kenneth J Davis
b9440c7e0e
additional comments 2024-08-05 09:41:13 -04:00
Jiří Malák
bf53e22d7a
exeflat: Update usage text for indirect file 2024-07-17 22:28:01 +02:00
Jiri Malak
db43a4b343 far-fix: symbols BIOSInt13, UserInt13 and BIOSInt19 are far (in LGROUP)
these symbols are in LGROUP and generaly cannot be addressed by DGROUP:offset
for Turbo C DGROUP offset overflow because symbols are too far to be addressed by DGROUP offset
2024-07-15 15:21:36 -04:00
Jiri Malak
4a1fd57f3a libm.lib: The i4m module from OW-CRTL is no longer used
now FreeDOS own implementation is used
this module is removed from the library to prevent misuse of this module
2024-07-15 15:20:21 -04:00
Jiri Malak
7a5af34727 ow-dos4gw: move configuration for DOS4GW to config.b 2024-07-15 08:04:43 -04:00
Jiri Malak
0231c98e3f ow-build: add global compiler control option to CC and CL macros
move only options which is related to the host environment not for target
-zq quiet output (all)
-fo=.obj set default extension for object file to .obj instead .o (Linux only)
2024-07-15 08:03:18 -04:00
Jiri Malak
c0009ebaaf echoto.bat: correct batch file for all parameters blank 2024-07-14 17:09:14 -04:00
Jiri Malak
a5b516dd7b exeflat: add support for response file to exeflat utility
the command line can overflow DOS max length that it fixes this issue
2024-07-14 15:19:48 -04:00
Jiri Malak
2fb0956513 tc2-build: correct various build breaks for Turbo C 2.0 build 2024-07-13 19:37:21 -04:00
Jiri Malak
58573d69d9 tc2-build: correct various build breaks for Turbo C 2.0 build 2024-07-13 19:37:21 -04:00
Jiří Malák
d6c50ebbe6 fix dos environment size issue with TC make 2024-07-13 07:43:07 -04:00