case where SS!=DS (which happens sometimes in resident code), in which
case va_list/va_arg need to use FAR pointers.
DS!=DGROUP never works, so I corrected that for NLS_DEBUG, by setting DS
in int2f.asm.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1491 6ac86273-5f31-0410-b378-82cca8765d1b
copy to read kernel and command.com into RAM, then updates the
boot sector, then calls copy again to write kernel and command
from RAM to disk. This reduces disk changes a lot when you do
SYS A: B: on a PC which only has 1 diskette drive ("DJ style").
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1349 6ac86273-5f31-0410-b378-82cca8765d1b
all other compilers can use it with pascal or "register" calling conventions.
Saves ~50 bytes for the init code.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@845 6ac86273-5f31-0410-b378-82cca8765d1b
disagrees with the default bpb (unless the default bpb says that the
number of hidden sectors is zero (usual for floppies)).
introduce generic_block_ioctl() function to handle all 0x440d ioctls
(inclusive locking)
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@763 6ac86273-5f31-0410-b378-82cca8765d1b
SYS 3.0 changes: added /L parameter to SYS to be able to change the kernel
boot segment + a few boot sector changes to get the pointer at the same
magic place for all boot sectors.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@751 6ac86273-5f31-0410-b378-82cca8765d1b
* 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
boot.asm modified to support non-512 byte sectors (e.g. 1.2 MB NEC diskettes)
512 byte sector size check removed (although Eric's boot32ea.asm does require
512-byte sectors, all LBA FAT32 volumes have 512-byte sectors anyway).
boot.asm cleaned up and modified to support Metakern (by Tom, Eric and Lucho)
bsDriveNumber updated by SYS even #ifndef STORE_BOOT_INFO (nothing in common)
Version 2.7beta, Luchezar Georgiev, 1 August 2003
o Now supports and includes the following new boot sectors:
1) the combined CHS+LBA FAT12/FAT16 boot sector by Tom Ehlert (29 July)
2) the CHS-only FAT32 boot sector -- as patched by Jon Gentle (08 July)
3) the LBA-only FAT32 boot sector by Eric Auer and Jon Gentle (19 July)
o The old combined (CHS+LBA), no-CALCPARAMS, no-resizable, non-Ghostable,
non-standard FAT32 boot sector and STORE_BOOT_INFO is no longer used.
o dump_sector() showed ASCII debug printout for the old sector only - fixed.
o Put a boot sector only if sector size = 512 (may it not be so in Japan?!).
If non-512 byte sectors encountered, report to the fd-kernel mailing list.
o Now puts boot sector before copying kernel/shell so it works in WinNT now.
o check_space() now implemented at last (required significant modifications)
o New file system (FAT type) detection method according to a MS White Paper.
o Now BOOTONLY works even without a preceding boot sector image file name.
o Some minor code cleanups.
Bart: some cleanups to the above; replaced 386 code for CHS FAT32 by 8088 code.
use boot32lb.asm instead of boot32ea.asm
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@652 6ac86273-5f31-0410-b378-82cca8765d1b
Changed so if no source given or only source drive (no path)
given, then checks for kernel.sys & command.com in current
path (of current drive or given drive) and if not there
uses root (but only if source & destination drive are different).
Fix printf to include count(ret) if copy can't write all requested bytes
*/
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@308 6ac86273-5f31-0410-b378-82cca8765d1b
modified so takes optional 2nd parameter (similar to PC DOS)
where if only 1 argument is given, assume to be destination drive,
but if two arguments given, 1st is source (drive and/or path)
and second is destination drive
FAT32 support.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@306 6ac86273-5f31-0410-b378-82cca8765d1b
changed the file system detection code.
*/
/* Revision 2.0 tomehlert 2001/4/26
no direct access to the disk any more, this is FORMAT's job
no floppy.asm anymore, no segmentation problems.
no access to partition tables
instead copy boot sector using int25/int26 = absdiskread()/write
if xxDOS is able to handle the disk, SYS should work
additionally some space savers:
replaced fopen() by open()
included (slighly modified) PRF.c from kernel
size is no ~7500 byte vs. ~13690 before
*/
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@217 6ac86273-5f31-0410-b378-82cca8765d1b