Commit Graph

370 Commits

Author SHA1 Message Date
Bart Oldeman
492fef1f72 Change FcbReadWrite to handle multiple records at once; this allows
for the optimization of FcbRandomBlockIO.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@718 6ac86273-5f31-0410-b378-82cca8765d1b
2003-10-16 15:03:16 +00:00
Bart Oldeman
dd9df1f3a6 Divide optimisation (ceiling) + some small cleanups
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@717 6ac86273-5f31-0410-b378-82cca8765d1b
2003-10-16 14:25:15 +00:00
Bart Oldeman
61d87d82bb Rename the global lpFcb variable to sda_lpFcb. Then use local lpFcb
variables where necessary. This clears up the confusing shadowing.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@716 6ac86273-5f31-0410-b378-82cca8765d1b
2003-10-16 13:01:55 +00:00
Bart Oldeman
fdb58291c4 Fix FCB problems with int21/ah=27,28 (RandomBlockIO)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@715 6ac86273-5f31-0410-b378-82cca8765d1b
2003-10-11 23:58:51 +00:00
Bart Oldeman
11e163096d Added SET support to config.sys + some small cleanups (from Lucho)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@714 6ac86273-5f31-0410-b378-82cca8765d1b
2003-10-05 16:22:57 +00:00
Bart Oldeman
ed77e34c55 jmp -> jmp short (necessary for nasm 0.98)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@713 6ac86273-5f31-0410-b378-82cca8765d1b
2003-10-05 13:34:25 +00:00
Bart Oldeman
3fa044c149 Implement support for int2f/ax=1220.
Fix int2f/ax=1216 (needs sft handles, not psp handles, and to return
the relative handle in BX, and to deal with carry)


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@712 6ac86273-5f31-0410-b378-82cca8765d1b
2003-10-05 13:30:47 +00:00
Bart Oldeman
5f6d47797e Fix problem with FAT12
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@711 6ac86273-5f31-0410-b378-82cca8765d1b
2003-10-03 13:50:38 +00:00
Bart Oldeman
20299d3642 Bump up version number; update changelog.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@710 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-24 20:47:04 +00:00
Bart Oldeman
bdc5569995 Set the Critical Error number immediately after calling a device driver.
This solves problems with int24 handlers that call int21/ah=59.
Let truename and blockrw return with an error if there is a critical error.
Don't overwrite the critical error # with the DOS error #.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@709 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-24 19:34:11 +00:00
Bart Oldeman
6df5c0be61 Fix problem with loading multiple device drivers in one file: the
segment part in the header must be ignored.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@708 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-24 18:53:44 +00:00
Bart Oldeman
9fd4a67e1d Correct segment for int21_handler to call for ctrl-c.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@707 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-23 22:33:45 +00:00
Bart Oldeman
a7a6a51adf Improved option handling and a new generic /k option for sys.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@706 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-23 22:31:32 +00:00
Bart Oldeman
22dd4265cf Fix problem with character map service.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@705 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-22 18:57:45 +00:00
Bart Oldeman
d157b12ef0 Update LSM and history
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@703 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-21 16:14:23 +00:00
Bart Oldeman
c669f3644c + Changes Lucho
* boot.asm, boot32.asm, boot32lb.asm, sys.c: add metakern support:
      sys looks for a file metakern.sys which is a multiple of 512.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@702 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-21 16:13:16 +00:00
Bart Oldeman
c4e02e8654 Correct floppy booting; increase "menu space tolerance" from 3 to 10.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@701 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-19 02:13:35 +00:00
Bart Oldeman
2e45c870eb Add boot32lb.asm
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@700 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-18 21:40:29 +00:00
Bart Oldeman
e5a93602af Adjust version and history.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@699 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-18 21:37:39 +00:00
Bart Oldeman
df99dd3007 Use memcpy instead of fmemcpy; avoid downcasting from far to near.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@698 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-18 21:00:09 +00:00
Bart Oldeman
d38750a538 From Michal Bakowski <mb@orad.pl>:
Change the boot drive to always be C: if DLASortByDriveNo==1


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@697 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-18 20:57:53 +00:00
Bart Oldeman
f489b1a1b1 Full screen config.sys menus (use MENUCOLOR=)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@696 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-18 20:55:41 +00:00
Bart Oldeman
c20f68e73d Free memory if there is an error in the relocation table.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@695 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-18 20:54:21 +00:00
Bart Oldeman
2f4e2d3a69 * add support for the far jmp at "int 30" (0000:00c0)
* mirror it for the HMA (ffff:00d0)
* put all DOS int handler (and the CPM entry jumped to from int30)
  jumpers in the "CONST" portion of DGROUP (instead of LGROUP)
  This helps Turbo C++ 1.01 make with the -S (swap) switch.
* adjustments to set the relevant PSP fields in task.c


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@694 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-16 12:38:02 +00:00
Bart Oldeman
7c241c59c6 Always use huge block sectors if the relevant bit is set in the device
header. This solves a problem with xmsdsk.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@693 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-15 21:08:22 +00:00
Bart Oldeman
81654429d7 Small optimizations
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@692 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-15 10:55:58 +00:00
Bart Oldeman
7bcbfa999c Add missing (); small optimization for DosGet date/time.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@691 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-15 10:54:43 +00:00
Bart Oldeman
9914760949 driver .asm files optimizations (many from Arkady); remove obsolete rdatclk
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@690 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-15 10:53:09 +00:00
Bart Oldeman
6537b65c85 Remove duplicate clobber.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@689 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-15 10:48:14 +00:00
Bart Oldeman
178b66e6de Flip some slashes for Linux compat; simplifications in kernel/makefile
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@688 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-15 10:46:24 +00:00
Bart Oldeman
1957583c0e Fix some typos.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@687 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-15 10:41:27 +00:00
Bart Oldeman
0aba4bc7fb Use STATIC=static for watcom C (statics are in the mapfile); remove
some cruft.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@686 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-15 10:40:11 +00:00
Bart Oldeman
f8f0891503 More verbose mapfiles for watcom C; some slash preparations to allow
cross-building on Linux


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@685 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-15 10:37:40 +00:00
Bart Oldeman
c418300de4 Fix warnings reported by Turbo C
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@684 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-15 10:36:04 +00:00
Bart Oldeman
b0e54ff704 (with a little help from Arkady)
inthndler.c, chario.c, break.c simplifications and cleanups.
Pass a near pointer to the far pointer that points to the device instead
of an SFT index (in general).
Make cooked_write much faster by only testing for input every 32
characters.
No longer test for ctl_s on syscon if writing to the printer: just
read from the printer which will return zero characters.
Fix reading/writing zero characters by returning "256" (special code).
Adjust interfaces in other files.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@683 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-09 17:43:43 +00:00
Bart Oldeman
8c22873b3e Initclk changes (mainly by Lucho)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@682 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-09 17:33:23 +00:00
Bart Oldeman
b4bee283f9 (suggestion from Arkady)
if sizeof(struct ClockRecord) != rp->r_count error
move year init below reading the BIOS
remove trailing whitespace


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@681 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-09 17:32:20 +00:00
Bart Oldeman
59484b2fc9 EBDA corrections by Lucho
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@680 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-09 17:30:10 +00:00
Bart Oldeman
6cd84b06d1 init_device corrections/cleanups (mainly by Arkady)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@679 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-09 17:29:19 +00:00
Bart Oldeman
44c5a93bdb New UNREFERENCED_PARAMETER macro that appears to work for all compilers.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@678 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-09 17:22:03 +00:00
Bart Oldeman
569f053101 Change r_status and dh_name to unsigned quantities.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@677 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-09 17:21:08 +00:00
Bart Oldeman
c4235b8fff Remove unused code.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@676 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-09 17:19:10 +00:00
Bart Oldeman
72c8bf17b8 Support for switches=/e[[:]nnnn] and for moving the EBDA (with Lucho)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@675 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-04 19:14:16 +00:00
Bart Oldeman
d1f48fb2b2 Add necessary "BootHardDiskSeconds" for non UPXed kernels.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@674 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-04 19:07:55 +00:00
Bart Oldeman
1266a13f7f Add necessary casts to ? : constructions; cleanup read_line_handle a little.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@673 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-04 19:05:27 +00:00
Bart Oldeman
b88881b8a0 Add peek and poke #defines
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@672 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-04 18:58:01 +00:00
Bart Oldeman
67ef543bae Fix pointer overflow problem for reading line using handle.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@671 6ac86273-5f31-0410-b378-82cca8765d1b
2003-09-01 17:49:40 +00:00
Bart Oldeman
bef6672954 Use 0x10000UL (avoids Turbo C warning)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@667 6ac86273-5f31-0410-b378-82cca8765d1b
2003-08-31 10:22:32 +00:00
Bart Oldeman
648f60b05d Clean cleans a bit more; change () to (void)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@666 6ac86273-5f31-0410-b378-82cca8765d1b
2003-08-31 10:20:28 +00:00
Bart Oldeman
8f1bbcd45d Set the PSP before the DTA. This solves an interrupt vector table corruption.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@665 6ac86273-5f31-0410-b378-82cca8765d1b
2003-08-30 22:17:42 +00:00